<?php

/**
 *
 * @author ROCU Fabien
 */

// session
session_start();

// appel des fichiers nécessaires
require_once('./classes/Config.php');
require_once('./classes/MySQL.php');
require_once('./classes/Template.php');

require_once('./classes/controleurs/Individus.php');
require_once('./classes/controleurs/Structure.php');
require_once('./classes/controleurs/Metier.php');
require_once('./classes/controleurs/Gardes.php');
require_once('./classes/controleurs/Application.php');

// connexion à la base de données
try {
    $_mysql = new MySQL(Config::$bddHost, Config::$bddUser, Config::$bddPwd, Config::$bddDB);
}
catch (SQLException $sqle) {
    // on affiche l'erreur
    echo $sqle->getMessage();
    // on quitte la page
    exit();
}

// gestion de l'utilisateur
if (isset($_SESSION['user'])) {	// si l'utilisateur est sauvegardé dans la session
    $_user = unserialize($_SESSION['user']);
} else {			// sinon, on crée un utilisateur
    $_user = new User();
}

if ($_user->isLogged()) {
    if (isset($_SESSION['individus'])) {
        $_individus = unserialize($_SESSION['individus']);
    } else {
        $_individus = new Individus();
        $_individus->charger_arrayPersonneID_individus();
        $_individus->charger_arrayPersonne_individus();
        $_individus->charger_arrayPompierID_individus();
        $_individus->charger_arrayPompier_individus();
    }

    if (isset($_SESSION['application'])) {
        $_application = unserialize($_SESSION['application']);
    } else {
        $_application = new Application();
        $_application->charger_arrayProfilID_application();
        $_application->charger_arrayProfil_application();
    }

    if (isset($_SESSION['metier'])) {
        $_metier = unserialize($_SESSION['metier']);
    } else {
        $_metier = new Metier();
        $_metier->charger_arrayTypeGardeID_metier();
        $_metier->charger_arrayTypeGarde_metier();
        $_metier->charger_arrayGradeID_metier();
        $_metier->charger_arrayGrade_metier();
        $_metier->charger_arrayAptitudeID_metier();
        $_metier->charger_arrayAptitude_metier();
    }
}

// contenu
$template = new Template('./template/');

$template->set_filenames(array(
        'header' => 'header.tpl',
        'footer' => 'footer.tpl'
));

if ($_user->isLogged()) {
    $template->assign_var('texte', 'Site en construction');

    $template->assign_var('onload', 'affiche(); show3(); init_navette(); calendar();');

    $personne = unserialize($_individus->array_personne[$_user->personne_id]);

    $template->assign_block_vars("header", array("PERSONNE" => $personne->personne_nom." ".$personne->personne_prenom));

    $profil = unserialize($_application->array_profil[$_user->profil_id]);

    $droits = $profil->profil_droits;
    $droits_parametres = $profil->profil_droits_parametres;

    if ( $droits['dieu'] ) {

        $template->assign_block_vars("header.Administration", null);
        $template->assign_block_vars("header.Administration.parametrage", null);

        $template->assign_block_vars("header.Individus", null);
        $template->assign_block_vars("header.Individus.personne", null);
        $template->assign_block_vars("header.Individus.utilisateur", null);
        $template->assign_block_vars("header.Individus.pompier", null);

        $template->assign_block_vars("header.Structure", null);
        $template->assign_block_vars("header.Structure.groupement", null);
        $template->assign_block_vars("header.Structure.centre", null);

        $template->assign_block_vars("header.Gardes", null);
        $template->assign_block_vars("header.Gardes.disponibilitees", null);
        $template->assign_block_vars("header.Gardes.retenues", null);
        $template->assign_block_vars("header.Gardes.mutualisation", null);

        $template->assign_block_vars("header.Autre", null);
        $template->assign_block_vars("header.Autre.epi", null);
    }

    if ( $droits['parametrage'] ) {
        $template->assign_block_vars("header.Administration", null);
        if ( $droits['parametrage'] )  $template->assign_block_vars("header.Administration.parametrage", null);
    }

    if ( $droits['personne'] || $droits['utilisateur'] || $droits['pompier'] ) {
        $template->assign_block_vars("header.Individus", null);
        if ( $droits['personne'] )  $template->assign_block_vars("header.Individus.personne", null);
        if ( $droits['utilisateur'] ) $template->assign_block_vars("header.Individus.utilisateur", null);
        if ( $droits['pompier'] )  $template->assign_block_vars("header.Individus.pompier", null);
    }

    if ( $droits['groupement'] || $droits['centre'] ) {
        $template->assign_block_vars("header.Structure", null);
        if ( $droits['groupement'] ) $template->assign_block_vars("header.Structure.groupement", null);
        if ( $droits['centre'] )  $template->assign_block_vars("header.Structure.centre", null);
    }

    if ( $droits['disponibilitees'] || $droits['retenues'] || $droits['mutualisation'] ) {
        $template->assign_block_vars("header.Gardes", null);
        if ( $droits['disponibilitees'] )  $template->assign_block_vars("header.Gardes.disponibilitees", null);
        if ( $droits['retenues'] ) $template->assign_block_vars("header.Gardes.retenues", null);
        if ( $droits['mutualisation'] )  $template->assign_block_vars("header.Gardes.mutualisation", null);
    }

    if ( $droits['epi'] ) {
        $template->assign_block_vars("header.Autre", null);
        if ( $droits['epi'] )  $template->assign_block_vars("header.Autre.epi", null);
    }

    $template->assign_block_vars("footer", array());

} else {
    $template->assign_var('onload', '');
}

?>